This invention relates to a messaging system for facilitating sending messages between two or more systems of a group operating on different message formatting protocols. Such systems are useful, for example, in collating data collected by a number of separate systems which do not operate in the same manner.
The incoming messages can be in differing formats dependant on the event and system they are arriving from. Such differences may arise because the systems were not originally developed with any intention of interfacing, or there may be other reasons why full compatibility is not available. For example, different users may have different preferences or requirements, such as the need for their own systems to interface with other equipment. For example, if one of the systems is to monitor overall availability of a service dependant on several different service providers, it may need to connect to each service provider's logging system. In another situation, data generated by one system may be required by another system, for example if two service providers are required to co-operate to provide a service. Such a situation may arise for example if a function needs to be performed by one provider that requires data to be retrieved from a store associated with another, and updated data reporting that operation to be returned to the store.
These service providers may be alternative suppliers of the same goods or service (e.g. two potential sources of the same material) or may be complementary (e.g. material and personnel). However, the service providers may use different equipment, from different manufacturers, and the individual systems need to be compatible with the equipment being monitored.
One example of such use is the operation of a number of co-operating services such as hospitals, doctors' surgeries etc, each of which hold and generate data which others may require, to support patient referrals etc.
If the number of systems, each potentially requiring a capability to interface with any other, is “n”, then the number of possible message flows through the messaging system, and therefore interfaces required, is given by n(n−1)—assuming that the requirements for information flow between different systems are not symmetrical. This clearly becomes unmanageable very quickly as numbers increase: it would be a major task to add a new system to the group, or change the specification of an existing one, as it would require reconfiguration of all the existing interconnections. The problem is reduced if systems operating in the same manner can be identified, so that systems using the same protocol can share some resources in the messaging system, but the complexity involved in adding a new system is still significant.
Moreover, if the messages need to be co-ordinated by the messaging system, as well as merely exchanged between the various co-operating systems, a common format is required for the messaging system to be able to do this.